Skip to content

Update README.md - #245

Merged
bencox merged 31 commits into
developfrom
updated_README
Jun 5, 2026
Merged

Update README.md#245
bencox merged 31 commits into
developfrom
updated_README

Conversation

@bencox

@bencox bencox commented May 28, 2026

Copy link
Copy Markdown
Member

Summary

Updated README.md, contributor guidelines, etc

bencox added 11 commits May 28, 2026 16:52
I've changed this quite a bit to lower both the apparent and actual barriers to getting users started on contributing. I've slightly relaxed the requirements for very small contributions, while maintaining them for significant contributions.
minor URL update
Tiny change to a title
Added instructions on how to install matlab and create the documentation.
Minor re-wording and rearrangements.
Small changes, as we will allow PRs into develop for minor fixes. Not everything tiny change must rigidly go through a feature branch.
@bencox
bencox marked this pull request as ready for review May 28, 2026 21:21
@bencox
bencox requested a review from stellaprins May 28, 2026 21:21
@github-actions

Copy link
Copy Markdown

Cyclomatic Complexity Check

L 97 (C 22-41): The McCabe cyclomatic complexity of 'initialiseSensorData' is 19.
L 153 (C 24-39): The McCabe cyclomatic complexity of 'recordSensorData' is 6.
L 159 (C 24-37): The McCabe cyclomatic complexity of 'AcousticSolver' is 5.
L 189 (C 29-40): The McCabe cyclomatic complexity of 'get.pressure' is 1.
L 192 (C 33-48): The McCabe cyclomatic complexity of 'get.densitySplit' is 1.
L 195 (C 29-40): The McCabe cyclomatic complexity of 'get.velocity' is 1.
L 38 (C 21-39): The McCabe cyclomatic complexity of 'autoComputeTimeStep' is 3.
L 35 (C 10-24): The McCabe cyclomatic complexity of 'executeTimeStep' is 25.
L 61 (C 7): The McCabe cyclomatic complexity of the anonymous function on line 61 is 1.
L 62 (C 9): The McCabe cyclomatic complexity of the anonymous function on line 62 is 1.
L 63 (C 12): The McCabe cyclomatic complexity of the anonymous function on line 63 is 1.
L 64 (C 14): The McCabe cyclomatic complexity of the anonymous function on line 64 is 1.
L 68 (C 54-77): The McCabe cyclomatic complexity of 'buildAbsorptionOperators' is 2.
L 49 (C 23-42): The McCabe cyclomatic complexity of 'kappaSplitCorrection' is 2.
L 47 (C 10-34): The McCabe cyclomatic complexity of 'setAbsorptionCoefficients' is 5.
L 38 (C 10-29): The McCabe cyclomatic complexity of 'setInitialConditions' is 2.
L 36 (C 10-28): The McCabe cyclomatic complexity of 'setkSpaceCorrection' is 2.

L 67 (C 41-64): The McCabe cyclomatic complexity of 'get.sourceFieldMagnitude' is 1.
L 72 (C 37-56): The McCabe cyclomatic complexity of 'get.sourceFieldPhase' is 1.

L 170 (C 24-41): The McCabe cyclomatic complexity of 'FourierCollocation' is 1.
L 207 (C 18-26): The McCabe cyclomatic complexity of 'set.kappa' is 2.
L 60 (C 14-17): The McCabe cyclomatic complexity of 'curl' is 2.
L 65 (C 14-23): The McCabe cyclomatic complexity of 'divergence' is 1.
L 67 (C 14-28): The McCabe cyclomatic complexity of 'divergenceSplit' is 16.
L 59 (C 16-28): The McCabe cyclomatic complexity of 'fracLaplacian' is 4.
L 65 (C 15-22): The McCabe cyclomatic complexity of 'gradient' is 15.
L 38 (C 10-18): The McCabe cyclomatic complexity of 'plotField' is 4.
L 37 (C 14-17): The McCabe cyclomatic complexity of 'sinc' is 1.
L 61 (C 17-23): The McCabe cyclomatic complexity of 'stagger' is 17.
L 193 (C 24-27): The McCabe cyclomatic complexity of 'Grid' is 6.
L 220 (C 23-28): The McCabe cyclomatic complexity of 'get.Nx' is 1.
L 224 (C 23-28): The McCabe cyclomatic complexity of 'get.Ny' is 1.
L 228 (C 23-28): The McCabe cyclomatic complexity of 'get.Nz' is 1.
L 232 (C 23-28): The McCabe cyclomatic complexity of 'get.dx' is 1.
L 236 (C 23-28): The McCabe cyclomatic complexity of 'get.dy' is 1.
L 240 (C 23-28): The McCabe cyclomatic complexity of 'get.dz' is 1.
L 245 (C 25-32): The McCabe cyclomatic complexity of 'get.xVec' is 1.
L 249 (C 25-32): The McCabe cyclomatic complexity of 'get.yVec' is 1.
L 253 (C 25-32): The McCabe cyclomatic complexity of 'get.zVec' is 1.
L 259 (C 22-26): The McCabe cyclomatic complexity of 'get.x' is 4.
L 270 (C 22-26): The McCabe cyclomatic complexity of 'get.y' is 4.
L 281 (C 22-26): The McCabe cyclomatic complexity of 'get.z' is 4.
L 293 (C 26-34): The McCabe cyclomatic complexity of 'get.xSize' is 1.
L 297 (C 26-34): The McCabe cyclomatic complexity of 'get.ySize' is 1.
L 301 (C 26-34): The McCabe cyclomatic complexity of 'get.zSize' is 1.
L 306 (C 22-40): The McCabe cyclomatic complexity of 'get.totalGridPoints' is 1.
L 311 (C 26-34): The McCabe cyclomatic complexity of 'get.kxVec' is 1.
L 315 (C 26-34): The McCabe cyclomatic complexity of 'get.kyVec' is 1.
L 319 (C 26-34): The McCabe cyclomatic complexity of 'get.kzVec' is 1.
L 324 (C 22-26): The McCabe cyclomatic complexity of 'get.k' is 4.
L 344 (C 23-28): The McCabe cyclomatic complexity of 'get.kx' is 4.
L 355 (C 23-28): The McCabe cyclomatic complexity of 'get.ky' is 4.
L 366 (C 23-28): The McCabe cyclomatic complexity of 'get.kz' is 4.
L 378 (C 26-34): The McCabe cyclomatic complexity of 'get.kxMax' is 1.
L 382 (C 26-34): The McCabe cyclomatic complexity of 'get.kyMax' is 1.
L 386 (C 26-34): The McCabe cyclomatic complexity of 'get.kzMax' is 1.
L 390 (C 25-32): The McCabe cyclomatic complexity of 'get.kMax' is 1.
L 43 (C 25-45): The McCabe cyclomatic complexity of 'assignWithGridPadding' is 4.
L 30 (C 10-24): The McCabe cyclomatic complexity of 'displayGridSize' is 2.
L 39 (C 10-22): The McCabe cyclomatic complexity of 'printGridSize' is 4.
L 40 (C 17-30): The McCabe cyclomatic complexity of 'getWavenumbers' is 3.
L 41 (C 22-40): The McCabe cyclomatic complexity of 'highestPrimeFactors' is 1.
L 39 (C 19-42): The McCabe cyclomatic complexity of 'returnWithoutGridPadding' is 4.
L 68 (C 10-21): The McCabe cyclomatic complexity of 'validateSize' is 7.
L 69 (C 24-32): The McCabe cyclomatic complexity of 'GridField' is 1.
L 44 (C 22-40): The McCabe cyclomatic complexity of 'createGridFieldsMap' is 2.

L 158 (C 24-32): The McCabe cyclomatic complexity of 'GridInput' is 2.
L 182 (C 29-38): The McCabe cyclomatic complexity of 'properties' is 1.
L 195 (C 23-34): The McCabe cyclomatic complexity of 'get.gridSize' is 1.
L 40 (C 10-32): The McCabe cyclomatic complexity of 'checkRequiredProperties' is 3.
L 48 (C 20-36): The McCabe cyclomatic complexity of 'getPropertyGroups' is 2.
L 52 (C 16-23): The McCabe cyclomatic complexity of 'subsasgn' is 4.
L 47 (C 22-28): The McCabe cyclomatic complexity of 'subsref' is 4.

L 119 (C 24-29): The McCabe cyclomatic complexity of 'Logger' is 1.
L 126 (C 18-27): The McCabe cyclomatic complexity of 'logMessage' is 4.
L 151 (C 35-45): The McCabe cyclomatic complexity of 'getInstance' is 3.
L 165 (C 18-20): The McCabe cyclomatic complexity of 'log' is 1.
L 175 (C 18-22): The McCabe cyclomatic complexity of 'reset' is 1.
L 180 (C 18-28): The McCabe cyclomatic complexity of 'setLogLevel' is 1.
L 186 (C 18-29): The McCabe cyclomatic complexity of 'setLogToFile' is 1.
L 192 (C 18-36): The McCabe cyclomatic complexity of 'setLogToCommandLine' is 1.
L 198 (C 18-30): The McCabe cyclomatic complexity of 'showTimeStamp' is 1.
L 204 (C 18-22): The McCabe cyclomatic complexity of 'debug' is 1.
L 209 (C 18-21): The McCabe cyclomatic complexity of 'info' is 1.
L 214 (C 18-24): The McCabe cyclomatic complexity of 'warning' is 1.
L 220 (C 18-22): The McCabe cyclomatic complexity of 'error' is 1.
L 84 (C 24-43): The McCabe cyclomatic complexity of 'validateNonNegScalar' is 2.
L 100 (C 24-41): The McCabe cyclomatic complexity of 'validateIndexField' is 6.
L 115 (C 24-32): The McCabe cyclomatic complexity of 'Materials' is 1.
L 140 (C 32-42): The McCabe cyclomatic complexity of 'addMaterial' is 20.
L 238 (C 22-34): The McCabe cyclomatic complexity of 'listMaterials' is 4.
L 270 (C 22-40): The McCabe cyclomatic complexity of 'listMaterialIndices' is 1.
L 279 (C 26-41): The McCabe cyclomatic complexity of 'getMaterialNames' is 1.
L 286 (C 45-76): The McCabe cyclomatic complexity of 'getMaterialNamesAndIndicesSorted' is 2.
L 144 (C 24-29): The McCabe cyclomatic complexity of 'Medium' is 1.
L 157 (C 24-31): The McCabe cyclomatic complexity of 'subsasgn' is 5.
L 187 (C 24-30): The McCabe cyclomatic complexity of 'refresh' is 1.
L 195 (C 18-40): The McCabe cyclomatic complexity of 'set.soundSpeedReference' is 2.
L 201 (C 18-39): The McCabe cyclomatic complexity of 'set.diffusionReference' is 2.
L 212 (C 24-46): The McCabe cyclomatic complexity of 'updateDerivedPaddedMaps' is 10.
L 262 (C 25-35): The McCabe cyclomatic complexity of 'mapProperty' is 6.
L 300 (C 22-40): The McCabe cyclomatic complexity of 'get.absorptionPower' is 4.
L 57 (C 36-56): The McCabe cyclomatic complexity of 'get.totalSensorPoints' is 1.
L 67 (C 33-49): The McCabe cyclomatic complexity of 'ProcessSensorData' is 4.

L 87 (C 24-29): The McCabe cyclomatic complexity of 'Solver' is 5.
L 104 (C 24-36): The McCabe cyclomatic complexity of 'SplitFieldPML' is 1.
L 126 (C 18-25): The McCabe cyclomatic complexity of 'set.pmlX' is 1.
L 131 (C 18-34): The McCabe cyclomatic complexity of 'set.pmlXStaggered' is 1.
L 136 (C 18-25): The McCabe cyclomatic complexity of 'set.pmlY' is 1.
L 141 (C 18-34): The McCabe cyclomatic complexity of 'set.pmlYStaggered' is 1.
L 146 (C 18-25): The McCabe cyclomatic complexity of 'set.pmlZ' is 1.
L 151 (C 18-34): The McCabe cyclomatic complexity of 'set.pmlZStaggered' is 1.
L 156 (C 24-31): The McCabe cyclomatic complexity of 'get.pmlX' is 1.
L 160 (C 24-31): The McCabe cyclomatic complexity of 'get.pmlY' is 1.
L 164 (C 24-31): The McCabe cyclomatic complexity of 'get.pmlZ' is 1.
L 168 (C 24-40): The McCabe cyclomatic complexity of 'get.pmlXStaggered' is 1.
L 172 (C 24-40): The McCabe cyclomatic complexity of 'get.pmlYStaggered' is 1.
L 176 (C 24-40): The McCabe cyclomatic complexity of 'get.pmlZStaggered' is 1.
L 49 (C 14-21): The McCabe cyclomatic complexity of 'applyPML' is 10.
L 62 (C 20-39): The McCabe cyclomatic complexity of 'getQuarticPMLProfile' is 5.
L 40 (C 10-24): The McCabe cyclomatic complexity of 'setupQuarticPML' is 3.

L 119 (C 24-36): The McCabe cyclomatic complexity of 'ThermalSolver' is 3.
L 142 (C 32-46): The McCabe cyclomatic complexity of 'get.temperature' is 1.
L 38 (C 21-39): The McCabe cyclomatic complexity of 'autoComputeTimeStep' is 3.
L 35 (C 10-24): The McCabe cyclomatic complexity of 'executeTimeStep' is 7.
L 32 (C 10-29): The McCabe cyclomatic complexity of 'setInitialConditions' is 3.

L 82 (C 24-39): The McCabe cyclomatic complexity of 'TimeDomainSolver' is 1.
L 111 (C 18-37): The McCabe cyclomatic complexity of 'setInitialConditions' is 1.
L 58 (C 10-12): The McCabe cyclomatic complexity of 'run' is 5.
L 1 (C 1): The McCabe cyclomatic complexity is 0.
L 76 (C 27-38): The McCabe cyclomatic complexity of 'expandMatrix' is 17.

@codecov

codecov Bot commented May 28, 2026

Copy link
Copy Markdown

Codecov Report

✅ All modified and coverable lines are covered by tests.
✅ Project coverage is 99.22%. Comparing base (c12cb8e) to head (26a30ec).
⚠️ Report is 1 commits behind head on develop.

Additional details and impacted files
@@           Coverage Diff            @@
##           develop     #245   +/-   ##
========================================
  Coverage    99.22%   99.22%           
========================================
  Files           47       47           
  Lines         1027     1027           
========================================
  Hits          1019     1019           
  Misses           8        8           
Flag Coverage Δ
unit 99.22% <ø> (ø)

Flags with carried forward coverage won't be shown. Click here to find out more.

☔ View full report in Codecov by Harness.
📢 Have feedback on the report? Share it here.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.

Updated minimum requirements date

@stellaprins stellaprins left a comment

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I like your changes they make the text more clear and concise in places (always a good thing!)

A few small comments and make sure to run pre-commit on all files to address the CI failure.

Comment thread docs/CONTRIBUTING.md Outdated
Comment thread docs/CONTRIBUTING.md Outdated
Comment thread docs/CONTRIBUTING.md Outdated
Comment thread docs/CONTRIBUTING.md
Comment thread docs/README.md Outdated
Comment thread docs/codingStandard.md
Comment thread docs/developerIntroduction.md Outdated
bencox and others added 10 commits June 2, 2026 09:21
Co-authored-by: Stella Prins <30465823+stellaprins@users.noreply.github.com>
Co-authored-by: Stella Prins <30465823+stellaprins@users.noreply.github.com>
Minor changes following Stella's comments.
Co-authored-by: Stella Prins <30465823+stellaprins@users.noreply.github.com>
Added a bit more description on conda.
minor changes
Small changes to pre-commit description.
* Remove no-commit-to-branch hook from pre-commit config

* Remove push trigger from pre-commit workflow

Co-authored-by: Stella Prins <30465823+stellaprins@users.noreply.github.com>
@stellaprins
stellaprins self-requested a review June 3, 2026 10:03
Comment thread docs/CONTRIBUTING.md Outdated
@stellaprins
stellaprins self-requested a review June 3, 2026 11:10
Co-authored-by: Stella Prins <30465823+stellaprins@users.noreply.github.com>

@stellaprins stellaprins left a comment

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looks good, just add the line of instructions to install pre-commit, see earlier comment
.

@bencox
bencox merged commit b7a2d76 into develop Jun 5, 2026
6 checks passed
@bencox
bencox deleted the updated_README branch June 5, 2026 15:33
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants